Fault detection system utilizing dynamic principal components analysis

ABSTRACT

Methods and systems for detecting a fault in a data set from an industrial process are disclosed. One method includes forming a first data matrix at a data processing framework from time-series training data, and performing a principal component pursuit on the first data matrix to form an uncorrupted, unscaled matrix and a sparse matrix in the memory, and scaling the uncorrupted, unscaled matrix to form an uncorrupted scaled matrix. The method also includes performing a dynamic principal component analysis (DPCA) on the uncorrupted scaled matrix to form a DPCA model, and determining a squared prediction error from the DPCA model. Based on the squared prediction error, faults are detected in a different data set from operation of the industrial process. At least one of (1) correcting the one or more faults in the different data set or (2) performing a repair operation on a sensor is performed.

CROSS-REFERENCE TO RELATED APPLICATIONS

The present application claims priority from U.S. Provisional PatentApplication No. 62/421,080, filed on Nov. 11, 2016, the disclosure ofwhich is hereby incorporated by reference in its entirety.

BACKGROUND

Hydrocarbon facilities, such as oil and gas facilities for production,are large scale operations, often including hundreds or even thousandsof sensors used to measure pressures, temperatures, flow rates, levels,compositions, and various other characteristics. The sensors included insuch facilities may provide a wrong signal, and sensors may fail.Accordingly, process measurements are inevitably corrupted by errorsduring the measurement, processing and transmission of the measuredsignal. These errors can take a variety of forms. These can includeduplicate values, null/unknown values, values that exceed data rangelimits, outlier values, propagation of suspect or poor quality data, andtime ranges of missing data due to field telemetry failures. Othererrors may exist as well.

The quality of the oil field data significantly affects the oilproduction performance and the profit gained from using various dataand/or analysis systems for process monitoring, online optimization, andcontrol. Unfortunately, based on the various errors that can occur, oilfield data often contain errors and missing values that invalidate theinformation used for production optimization.

To improve the accuracy of process data, fault detection techniques havebeen developed to determine when and how such sensors fail. For example,data driven models including principal component analysis (PCA) and itsextension, dynamic PCA (DPCA), which includes time lagged variables torepresent dynamic processes, have been developed. However, there areseveral drawbacks to PCA and DPCA, including the inability to handle anymissing or corrupted data in the training data set used to build themodel. As with most data driven modelling techniques, a model builtusing DPCA will only be as good as the data on which the model is built.Therefore, traditionally, DPCA models are built using “known good” orgenerally fault-free training data sets. However, this is not alwayspossible or ideal, because there may not be a fault-free data setavailable that adequately describes operation of the system and it isoften quite time-consuming to manually clean a data set to prepare itfor use in modeling.

In some cases, another analysis and data processing technique calledPrincipal Component Pursuit (PCP) has been used, which performs a convexminimization approach to analyze data sets. PCP is discussed further inZhou Z., Li X., Wright J., Candes E., & Ma Y. (2010) “Stable PrincipalComponent Pursuit,” International Symposium on Information Theory, whichis incorporated herein by reference in its entirety. Such PCP analysishas, in the past, been used in image processing, and in isolatedcircumstances, as an alternative to PCA for purposes of process faultdetection. However, to use PCP for fault detection on real-time data canbe computationally complex, and often PCP is applied based on anassumption of fault-free data in a training set. Furthermore, PCP is nota dynamic method and therefore does not consider time dependencies indata.

Accordingly, the existing approaches do not provide a robust modelingapproach that accounts for imperfect training data, particularly for usein real-time processing of large-scale, time-sequence data sets.

For the above and other reasons, improvements in detection andaddressing faults in industrial processes are desirable.

SUMMARY

In accordance with the following disclosure, the above and other issuesare addressed by the following:

In a first aspect, a computer-implemented method for detecting a faultin a data set from an industrial process are disclosed. One methodincludes forming a first data matrix at a data processing framework fromtraining data, the training data from operation of an industrial processhaving at least two sensors, wherein the training data comprisestime-series data. The method includes performing a principal componentpursuit on the first data matrix to form an uncorrupted, unscaled matrixand a sparse matrix in the memory, and scaling the uncorrupted, unscaledmatrix to form an uncorrupted scaled matrix. The method also includesperforming a dynamic principal component analysis on the uncorruptedscaled matrix to form a dynamic principal component analysis model, anddetermining a squared prediction error from the dynamic principalcomponent analysis model. Based on the squared prediction error, one ormore faults are detected in a different data set from operation of theindustrial process having the at least two sensors. At least one of (1)correcting the one or more faults in the different data set or (2)performing a repair operation on a sensor from among the at least twosensors is performed.

In a second aspect, a fault detection system useable to detect a faultin a data set from an industrial process is disclosed. The systemincludes a computing system including a processor and a memorycommunicatively connected to the processor. The computing system isconfigured to execute, based on instructions stored in the memory, amethod that includes forming, in the memory, a first data matrix at adata processing framework from training data, the training data fromoperation of an industrial process having at least two sensors, whereinthe training data comprises time-series data. The method furtherincludes performing a principal component pursuit on the first datamatrix to form an uncorrupted, unscaled matrix and a sparse matrix inthe memory, and scaling the uncorrupted, unscaled matrix to form anuncorrupted scaled matrix. The method also includes performing a dynamicprincipal component analysis on the uncorrupted scaled matrix to form adynamic principal component analysis model, and determining a squaredprediction error from the dynamic principal component analysis model.The method also includes, based on the squared prediction error,detecting one or more faults in a different data set from operation ofthe industrial process having the at least two sensors. At least one of(1) correcting the one or more faults in the different data set or (2)performing a repair operation on a sensor from among the at least twosensors is performed.

In a third aspect, a fault detection system useable to detect a fault ina data set generated from at least two sensors monitoring a processwithin a hydrocarbon facility is disclosed. The fault detection systemincludes a computing system including a processor and a memorycommunicatively connected to the processor, the computing systemconfigured to execute, based on instructions stored in the memory, amethod that includes forming, in the memory, a first data matrix at adata processing framework from training data, the training data from atleast two sensors associated with a process within a hydrocarbonfacility, the training data comprising time-series data including anyerrors represented by a sparse data matrix, and performing a principalcomponent pursuit on the first data matrix to form an uncorrupted,unscaled matrix and a sparse matrix in the memory, wherein performingthe principal component pursuit includes tuning a parameter associatedwith the sparse matrix to balance a rate of fault detection against arate of false alarming. The method also includes scaling theuncorrupted, unscaled matrix to form an uncorrupted scaled matrix, andperforming a dynamic principal component analysis on the uncorruptedmatrix to form a dynamic principal component analysis model. The methodfurther includes determining a squared prediction error from the dynamicprincipal component analysis model, and based on the squared predictionerror, detecting one or more faults in a different data set from the atleast two sensors associated with the process within the hydrocarbonfacility. At least one of (1) correcting the one or more faults in thedifferent data set or (2) performing a repair operation on a sensor fromamong the at least two sensors is performed.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates a system in which the scalable data processingframework for dynamic data cleansing can be implemented in the contextof an oil production facility, in an example embodiment;

FIG. 2 illustrates a possible process for performing a robust dynamicprincipal component analysis on monitored data, according to an exampleembodiment;

FIG. 3 illustrates a possible process for performing a robust dynamicprincipal component analysis on monitored data, according to a secondexample embodiment;

FIG. 4 is a graphical illustration of a correlation between a λ factorand both fault detection rate and false alarm rate;

FIG. 5 is a graph illustrating accuracy of fault detection usingtraditional DPCA, sequential PCP and DPCA, and integrated PCP and DPCAanalyses on an example faulty data set;

FIG. 6 is a graph illustrating use of traditional DPCA, sequential PCPand DPCA, and integrated PCP and DPCA analyses on an example data set ofunknown quality;

FIG. 7 is a graph illustrating a training data set with faults, as wellas without faults using sequential and integrated PCP approaches;

FIG. 8 is a graph illustrating operation of traditional DPCA, sequentialand integrated PCP and DPCA approaches on a known-faulty training dataset;

FIG. 9 illustrates the training data set with faults, used in FIG. 8, aswell as without faults using sequential and integrated PCP approaches;

FIG. 10 is a schematic depiction of a Tennessee-Eastman processsimulation representing an example industrial process on which thepresent analyses can be implemented;

FIG. 11 is a graph of training data selected for a low alarm ratethreshold;

FIG. 12 is a graph illustrating use of traditional DPCA based on thetraining data of FIG. 11;

FIG. 13 is a graph illustrating use of traditional DPCA based on thetraining data of FIG. 11 with errors introduced;

FIG. 14 is a graph illustrating use of sequential and integrated PCP andDPCA approaches using erroneous training data; and

FIG. 15 is a graph illustrating data reconstruction using PCP within thesequential and integrated PCP and DPCA approaches applied in FIG. 14.

DETAILED DESCRIPTION Definition

For ease of understanding, the term “data set” will be used throughoutthis disclosure. A data set may include real-time data, historical data,or any combination thereof. The data set may be stored, for example, ina database or data historian. Alternatively, the data set may bestreaming live. A data stream is one example of a data set. In oneembodiment, the data set includes data from at least two sensors used ina process (e.g., an industrial process, a process in a hydrocarbonfacility, etc.). A data set may include various data sets. A data setmay include data from various sensors. As will be discussed herein, anembodiment provided herein may form a first data matrix at a dataprocessing framework from training data (e.g., a first data set), thetraining data from operation of an industrial process having at leasttwo sensors, where the training data comprises time-series data.Furthermore, the embodiment may perform a principal component pursuit onthe first data matrix to form an uncorrupted, unscaled matrix and asparse matrix in the memory; scale the uncorrupted, unscaled matrix toform an uncorrupted scaled matrix; perform a dynamic principal componentanalysis on the uncorrupted scaled matrix to form a dynamic principalcomponent analysis model; and determine a squared prediction error (SPE)from the dynamic principal component analysis model. Furthermore, theembodiment may, based on the squared prediction error (SPE), detect oneor more faults in a different data set (e.g., a second data set) fromoperation of the industrial process having the at least two sensors.

As briefly described above, embodiments of the present invention aredirected to data cleansing systems and methods, for example to providedynamic fault detection based on dynamic data. The systems and methodsof the present disclosure provide for an ability to perform a robustdynamic principal components analysis (robust DPCA), in that theanalysis allows for building a model that is tolerant of faults that maybe present in training data. In example embodiments, a traditional DPCAanalysis can be combined with a principal component pursuit (PCP)analysis that can be used to create a corrected training data set thatwill exclude for faulty data (e.g., outliers, frozen or missing values,bias, etc.). Referring generally to FIGS. 1-15, it is noted that thesystems and methods of the present disclosure provide for an improvedability to detect errors relative to other DPCA models that are builtbased on similarly faulty data, which would typically cause DPCAanalysis to quickly fail. Use of PCP to improve DPCA analysis isparticularly advantageous in that it can be adapted to DPCA to adjustfor acceptable noise, and to address possible balancing between falsepositive alerts and adequate detection levels. Secondly, PCP is capableof recovering the underlying matrices exactly, and therefore can be usedto build a model that reliably represents the data. Furthermore, thefault detection embodiments discussed herein may be utilized to moreaccurately and more quickly detect faults in large data sets, forexample, those data sets including 100s of variables. After a fault isdetected using the embodiments described herein, a data cleansing methodcan be utilized to eliminate the fault, and after the fault iseliminated, the remaining cleaned data can be used for further analysisand/or storage. Embodiments of data cleansing methods that may be usedinclude, but are not limited to, those found in US Patent PublicationNo. 2014/0108359 (T-9157), which is incorporated herein by reference inits entirety.

In accordance with the present disclosure, the fault detection andrepair features described herein can be applied to a number ofscenarios. For example, in the case of data received from sensorsassociated with an industrial process, in some cases, correcting the oneor more faults in a data set can be performed. In other cases,performing a repair operation on a sensor from among the at least twosensors can be performed. The repair operation can include, for example,fixing a sensor or its connection, or replacement of the sensor entirelyin the event of severe malfunction, or both. In some embodiments,performing a repair operation on a sensor may include repairing softwareof the sensor, repairing hardware of the sensor, or both.

The language “performing at least one of (1) correcting the one or morefaults in the different data set or (2) performing a repair operation ona sensor from among the at least two sensors” includes only (1)correcting the one or more faults in the different data set in someembodiments. The language “performing at least one of (1) correcting theone or more faults in the different data set or (2) performing a repairoperation on a sensor from among the at least two sensors” includes only(2) performing a repair operation on a sensor from among the at leasttwo sensors in some embodiments. The language “performing at least oneof (1) correcting the one or more faults in the different data set or(2) performing a repair operation on a sensor from among the at leasttwo sensors” includes both (1) correcting the one or more faults in thedifferent data set and (2) performing a repair operation on a sensorfrom among the at least two sensors in some embodiments. Of course,other repair, intervention, or notification operations are possible aswell, e.g., notifying a user of a need for repair, automaticallyshutting down all or a portion of an industrial process, etc.

Referring now to FIG. 1, an example system 100 is shown that is useableto implement a modeling system that is subsequently useable for faultdetection in large-scale data applications, examples of which includeindustrial processes such as in the oil and gas industry. In particular,the example system 100 may integrate data of different types from an oilproduction facility, such as an oil field. As illustrated in theembodiment shown, a computing system 102 receives data from an oilproduction facility 104, which includes a plurality of subsystems,including, for example, a separation system 106 a, a compression system106 b, an oil treating system 106 c, a water treating system 106 d, andother system 106 e.

A hydrocarbon facility such as the oil production facility 104 can beany of a variety of types of oil production facilities, such as aland-based or offshore drilling system. In the embodiment shown, thesubsystems of the oil production facility 104 each are associated with avariety of different types of data, and have sensors that can measureand report that data in a data set (e.g., in the form of one or moredata streams). A sensor may be integral to a component (e.g., integralto a piece of equipment) or separate from the component (e.g., separatefrom the piece of equipment) depending on the circumstances. Forexample, the separation system 106 a may include pressure andtemperature sensors and associated sensors that test backpressure aswell as inlet and outlet temperatures. In such a system, various errorsmay occur, for example sensor bias or other types of error conditions.The compression system 106 b can include a pressure control formonitoring suction, as well as a variety of stage discharge temperaturecontrollers and associated sensors. In addition, the oil treating system106 c, water treating system 106 d, and other system 106 e can each havea variety of types of sensors, including pressure and temperaturesensors, which can be periodically sampled to generate a data set to bemonitored by the computing system 102. It is recognized that the varioussystems 106 a-e are intended as examples, and that various other systemscould have sensors that are to be incorporated into data sets providedto the computing system 102 as well.

In the embodiment shown, the computing system 102 includes a processor110 and a memory 112. The processor 110 can be any of a variety of typesof programmable circuits capable of executing computer-readableinstructions to perform various tasks, such as mathematical andcommunication tasks.

The memory 112 can include any of a variety of memory devices, such asusing various types of computer-readable or computer storage media. Acomputer storage medium or computer-readable medium may be any mediumthat can contain or store the program for use by or in connection withthe instruction execution system, apparatus, or device. In exampleembodiments, the computer storage medium is embodied as a computerstorage device, such as a memory or mass storage device. In particularembodiments, the computer-readable media and computer storage media ofthe present disclosure comprise at least some tangible devices, and inspecific embodiments such computer-readable media and computer storagemedia include exclusively non-transitory media.

In the embodiment shown, the memory 112 stores a data processingframework 114. The data processing framework 114 performs analysis ofdynamic data, such as in a data set (e.g., from an oil productionfacility 104), for detecting and reconstructing faults in data. Of note,dynamic data may be real-time in some embodiments and may not bereal-time in others. In the embodiment shown, the data processingframework 114 includes a DPCA modeling module 116, a principal componentpursuit module 118, and a user interface definition module 120. However,in some embodiments, the data processing framework 114 may include lessthan or more than the modules 116, 118 and 120.

The DPCA modeling module 116 receives dynamic data, for example from adata set. The DPCA modeling module 116 requires training based on atraining data set 117. The training data set 117 can be an isolated,pre-selected set of time-series data captured and stored that may berepresentative of operation of the selected sensor(s) within the system100. An example of such analysis is discussed below in connection withFIGS. 2-3. Once trained, the DPCA model can be used for error detectionin a subsequent data set(s).

The PCP module 118 detects errors in the received training data 117, andcan, in the embodiment shown, create a low rank and a sparse matrix,which correspond to fault free data and detected faults in the trainingdata, respectively. Example implementations integrating PCP regardingtraining data for a DPCA model are discussed below in connection withFIGS. 2-3.

The user interface definition module 120 presents to a user aconfigurable arrangement with which the scalable data framework can beconfigured to receive input streams and arrange analyses of those inputstreams, thereby allowing a user to define various analyses to beperformed on the input data set. The user interface definition module120 can also present to the user one or more alerts or alarms, forexample based on faults in a different data set that are identified oncethe PCP module 118 and DPCA modeling module 116 are applied to create arobust DPCA model. For example, a squared prediction error derived fromthe DCPA model could be used to detect such faulty data insubsequently-monitored different data set. Depending on the embodiment,one or more of the items discussed herein may be presented to a user viaa visualization, user interface, etc.

Optionally, in conjunction with the user interface definition component120, a data reconstruction component (not shown) can be used to, in somecases, reconstruct faulty data according to a selected type ofoperation, e.g., based on the DPCA model. Details regarding such a userinterface, and reconstruction of faulty data, are provided in U.S.patent application Ser. No. 14/937,701, filed on Nov. 10, 2015 andentitled “Data Processing Framework for Data Cleansing”, published asU.S. Patent Publication No. 2016/0179599, the disclosure of which ishereby incorporated by reference in its entirety.

The computing system 102 can also include a communication interface 130configured to receive a data set from the oil production facility 104,and transmit notifications as generated by the data processing framework114, as well as a display 132 for presenting a user interface associatedwith the data processing framework 114. In various embodiments, thecomputing system 102 can include additional components, such asperipheral I/O devices, for example to allow a user to interact with theuser interfaces generated by the data processing framework 114.

Referring now to FIGS. 2-3, processes for cleansing data in a data setare described, in conjunction with a combined PCP and DPCA analysiscontemplated by the present disclosure. Generally, the processes ofFIGS. 2-3 include similar operations, but have differing success ratesbased on the ordering of operations performed. In particular, FIG. 2discloses a sequential process in which PCP is performed before DPCA,while FIG. 3 discloses a process in which PCP is performed in an“integrated” manner, after an augmented matrix is created for use in theDPCA analysis but before the DCPA calculations take place. In bothcases, a matrix is created that does not include error data (outside ofa particular noise threshold), and that matrix will have DPCA performedon it. The difference between the methods generally relates to whetheraugmenting (creating a time-lagged data matrix from the data set underconsideration) is performed before or after PCP is applied. As explainedin conjunction with the example applied data sets below, both approachesprovide substantial improvement over standard DPCA analysis alone (whichdoes not work well when trained with a data set including errors), whilethe “integrated” approach provides, in some cases, substantialadditional accuracy relative to the “sequential” method.

Referring to FIG. 2, an example “sequential” process 200 is illustratedfor cleansing data in a data set is illustrated. The data set used inprocess 200 can be, for example, a collection of data streams from adata source, such as from the oil production facility 104 of FIG. 1.However, the data set used in process 200 (and process 300) may bepractically any data set as discussed herein.

In the embodiment shown, the process 200 generally includes selection ofa training data set, which corresponds to a matrix M that is processedby PCP into a low-rank matrix L₀, a sparse matrix S₀ and a noise matrixZ₀ (step 202). The PCP methodology utilized herein, which is sometimesreferred to as stable PCP, is discussed further in Zhou Z., Li X.,Wright J., Candes E., & Ma Y. (2010) “Stable Principal ComponentPursuit,” International Symposium on Information Theory, which isincorporate herein by reference. As illustrated in process 200, aprincipal component pursuit process is applied to matrix M (step 202) toseparate that matrix into those matrices. This is done by satisfyingboth:

minimize  L_(s) + λS₁ subject  to  M − L − S_(r) ≤ δ

In this context, the λ symbol represents a trade-off between rank andsparsity. Accordingly, the λ factor should be tuned to balance a needfor error detection without increasing false positives above anacceptable level. Although in some embodiments, the factor could be setsuch that (λ=√{square root over (max{n1,n2})}), such a set number maynot be appropriate in alternative embodiments in which a convergencefactor (δ) is used that defines a level of appropriate noise, Z₀.Relatedly, the δ represents a convergence criteria that in effect sets anoise threshold. In particular, the δ factor defines a threshold forwhich two conditions are set: first, it must be greater than 0 (to allowfor some noise factor to be incorporated), and second, the Z₀ (noise)term must fall under this value.

To solve the above constraints, an augmented Lagrangian multiplier (ALM)with alternating directions method can be applied. In particular, theALM methodology can be applied as follows, in which an additionalpenalty term

$( {\frac{\mu}{2}{{M - L - S}}_{F}^{2}} )$is included:

$( {L,S,Y,\mu} ) \doteq {{L}_{*} + {\lambda{S}_{1}} + \langle {Y,{M - L - S}} \rangle + {\frac{\mu}{2}{{M - L - S}}_{F}^{2}}}$

In an alternative arrangement, an alternating directions method (ADM)can be used. In such a method, the L and S matrices can be minimizedconsecutively in iterations, as discussed in Lin Z., Chen L. W., & Ma Y.(2010), entitled “The augmented Lagrange multiplier method for exactrecovery of a corrupted low-rank matrices”, which is incorporated hereinby reference in its entirety. Such a minimization technique can beexpressed as follows:L _(k+1)∈argmin_(L) L(L,S _(k) ,Y _(k),μ_(k))S _(k+1)∈argmin_(S) L(L _(k+1) ,S,Y _(k),μ_(k))Y _(k+1) =Y _(k)+μ(M−L _(k+1) −S _(k+1))which is performed iteratively until converged. As noted above, thisminimization is extended by a noise term Z₀, which requires tuning ofthe δ factor accordingly, subject to the convergence criterion providedabove (e.g., listed above).

With respect to the noise matrix, the convergence factor, delta, is asmall value that represents the noise threshold. The criteria forconvergence then becomes this delta multiplied by the Frobenius norm ofthe corrupted, scaled matrix. A noise matrix, Z, can be defined as amatrix that contains the small noisy perturbations in the data. It canbe determined after convergence is achieved in the PCP process bysubtracting the uncorrupted, scaled matrix and sparse matrix resultingfrom PCP from the corrupted matrix. Then, a new, noisy but uncorruptedmatrix can be determined by adding the noise matrix, Z to theuncorrupted matrix. This result can then be used in the DPCA process.The use of this noisy uncorrupted matrix is expected to reduce thenumber of false alarms by adjusting for normal expected noise within anygiven process. The use of the noise matrix may be optional in someembodiments.

Once PCP is performed, the output matrices can be considered. In thiscase, the low-rank matrix L_(k) can correspond to an unscaled version ofthe error-free data, and the sparse matrix S_(k) can correspond to errordata. Accordingly, the low-rank matrix L_(k) can be scaled (step 204) toavoid scaling effects on the DPCA modeling. In the embodiments providedherein, the scaling is performed based on a zero mean and a unitvariance.

From the scaled matrix (referred to herein as L₀), a model can becreated (step 206) using DPCA from this now error-free, scaled matrix,L₀. The DPCA utilized herein is discussed in Ku W., Storer R. H., &Georgakis C. (1995) “Disturbance detection and isolation by dynamicprincipal component analysis,” Chem Intell Lab Syst, 30 (1), 179-196,which is incorporated herein by reference in its entirety. Beforeperforming the DPCA analysis, the method 200 includes generating anaugmented matrix L_(k,aug) using lagged variables from L_(k) (step 206).The augmented matrix can be a time shifted matrix of the generalstructure below, which is used in a typical DPCA analysis:

${X(l)} = \begin{bmatrix}x_{t}^{T} & x_{t - 1}^{T} & \ldots & x_{t - l}^{T} \\x_{t - 1}^{T} & x_{t - 2}^{T} & \ldots & x_{t - l - 1}^{T} \\\vdots & \vdots & \ddots & \vdots \\x_{t + l - n}^{T} & x_{t + l - n - 1}^{T} & \ldots & x_{t - n}^{T}\end{bmatrix}$

DPCA can be performed on the augmented matrix, L_(k,aug) by calculatinga covariance matrix, and performing singular value decomposition (SVD)on that covariance matrix (step 208). The set of variables thatrepresent the most variance from the least variance can be separated.

Those variables representing the least variance (residuals) are thenused to calculate the Q statistic (or the squared prediction error, SPE)for purposes of fault detection (step 210). The Q statistic, correspondsto the squared norm of the residual vector, and uses the residuals todetermine how well a sample conforms to the model. The Q statistic, orSPE, is a preferred method of fault detection due to it beingstatistically independent with respect to time lags if enough datapoints are included in a training model. The control limits for the Qstatistic can be determined, for example, using the method described inNomikos P. & MacGregor J. F. (1995) “Multivariate SPC charts formonitoring batch processes. Technometrics, 37 (1), 41-59, which isincorporated herein by reference in its entirety. This method can beillustrated as:

δ² = g^(SPE)χ_(α)²(h^(SPE))

where (1−α)×100% is the confidence level, level, g^(SPE)=θ₂/θ₁,h^(SPE)=θ₁ ²/θ₂, θ₁=Σ_(i=i+1) ^(n)λ_(i), θ₂=Σ_(i=i+1) ^(n)λ_(i) ² andλ_(i) is the i^(th) eigenvalue of the covariance. Subsequently, the Qstatistic, or squared prediction error (SPE), can be used to detectfaults in a data stream (step 212) based on the model parameters.

Once faults are detected, an action can be taken in response to thosefaults (step 214). That action can take a variety of forms. In somecases, correcting the one or more faults in a data set can be performed.This can be accomplished, for example, using data reconstructiontechniques such as those described in US Patent Publication No.2014/0108359 (T-9157), which was previously incorporated by reference inits entirety. In other cases, performing a repair operation on a sensorfrom among the at least two sensors can be performed. The repairoperation can include, for example, fixing a sensor or its connection,or replacement of the sensor entirely in the event of severemalfunction. Still other operations can be taken in response to faults(e.g., generation of notifications to users to take action, orinitiating a repair operation). Such actions may particularly beapplicable in the case of industrial processes which are not easily shutdown to allow for repair of particular sensors and/or components.

Accordingly, the overall process 200 (not including step 214, which isbased on the analysis described) can be summarized as follows:

Algorithm 1: Sequential Method (PCP, then DPCA) 1. Input M ∈ 

 _(n1×n2) 2. Initialize  S₀ = Y₀ = 0 λ ≈ 10⁻² μ = (n1n2)/4||M||₁,k = 03. while not converged, do (same as Algorithm 1,  different convergencecriteria) L_(k+1) ← D_(1/μ)(M − S_(k) + μ⁻¹Y_(k)); S_(k+1) ← S_(λ/μ)(M −L_(k+1) + μ⁻¹Y_(k)); Y_(k+1) ← Y_(k) + μ(M − L_(k+1) − S_(k+1)); 4. endwhile 5. Output: L_(k) and S_(k), where the former is the  uncorrupted,unscaled data and the latter is a  sparse matrix 6. Scale L_(k) to zeromean and unit variance 7. Generate augmented matrix, L_(k,aug) withlagged  variables from L_(k) 8. Do DPCA on L_(k,aug) (a) Computecov(L_(k,aug)) (b) Do SVD on cov(L_(k,aug)) (c) Separate the set ofvariables that represent the  most variance (the DPCA model) from theleast  variance (for the Q statistic) 9. Calculate Q statistic for faultdetection

Referring to FIG. 3, an alternative “integrated” process 300 is shown inwhich an integrated PCP and DPCA analysis is performed to build a modelbased on fault-free data. In the alternative process 300 generally, bothPCP and DPCA analyses are applied, but the PCP analysis is performed onthe augmented matrix typically created for DPCA analysis, as is furtheroutlined below.

In particular, in the alternative process 300, an augmented matrix isfirst formed (step 302) based on received training data. As above, theaugmented matrix can be of the format seen below, in which a number ofrows corresponds to a number of training samples and a number of columnscorresponds to a number of time sequence steps desired for training:

${X(l)} = \begin{bmatrix}x_{t}^{T} & x_{t - 1}^{T} & \ldots & x_{t - l}^{T} \\x_{t - 1}^{T} & x_{t - 2}^{T} & \ldots & x_{t - l - 1}^{T} \\\vdots & \vdots & \ddots & \vdots \\x_{t + l - n}^{T} & x_{t + l - n - 1}^{T} & \ldots & x_{t - n}^{T}\end{bmatrix}$

Using the augmented matrix, PCP is next performed (step 304) based onthat augmented matrix. The PCP analysis performs conversion of an L andS matrix to output L_(k), S_(k), which are an uncorrupted, unscaledaugmented matrix and a sparse matrix, respectively.

After the PCP analysis, the L_(k) matrix is scaled (step 306), using azero mean and unit variance. That scaled L_(k) matrix is then used toperform the remaining portions of the DPCA process (step 308). Note thatsince the augmented matrix is generated before the step of performingPCP in process 300, the DPCA process for this method does not includedetermining the augmented matrix. In particular, and as above, acovariance of the matrix is determined, and SVD performed on thatcovariance matrix. A Q statistic is also calculated (step 310), which isuseable to detect errors in subsequent data. Accordingly, after thestatistic is calculated, the DPCA model can likewise be used on adifferent data set to detect subsequently-received faulty data (step312).

Accordingly, the overall process 300 can be summarized as follows:

Algorithm 2: Integrated Method (PCP on augmented matrix) 1. Input M ∈ 

 _(n1×n2) 2. Generate augmented matrix, M_(aug) with lagged  variablesfrom M 3. Initialize  S₀ = Y₀ = 0 λ ≈ 10⁻² μ = (n1n2)/4||M||₁,k = 0 4.while not converged do (same as Algorithm 1,  different convergencecriteria)     L_(k+1) ← D_(1/μ)(M_(aug) − S_(k) + μ⁻¹Y_(k));     S_(k+1)← S_(λ/μ)(M_(aug) − L_(k+1) + μ⁻¹Y_(k));     Y_(k+1) ← Y_(k) + μ(M_(aug)− L_(k+1) − S_(k+1)); 5. end while 6. Output: L_(k) and S_(k), where theformer is the  uncorrupted, unscaled augmented matrix and the  latter isa sparse matrix 7. Scale L_(k) to zero mean and unit variance 8. Do DPCAon L_(k), (a) Compute cov(L_(k)) (b) Do SVD on cov(L_(k)) (c) Separatethe set of variables that represent the  most variance (the DPCA model)from the least  variance (for the Q statistic) 9. Calculate Q statisticfor fault detection

It is noted that the present disclosure relates generally to situationsin which a predetermined set of training data is selected for creationof the DPCA model. Accordingly, as operation of the system may change,periodically a user may elect to re-train the DPCA model using adifferent data set, to allow the DPCA model to track current operationof the process being monitored. In some embodiments, this robust DPCA,or RDPCA process, can be performed recursively to allow the DPCA modelto update when a change is detected without having to repeat all ofprocess 300. This would, ideally, eliminate or reduce the need forintensive recalculation of the DPCA matrices as described above.

Still further, it is noted that the process 300 can similarlyincorporate an action step, such as the different actions to be taken asdescribed above with respect to step 214 of FIG. 2.

Based on the above example embodiments, an example case study ispresented in association with a field test on steam generator data, asan example application of the above modeling and fault detection systemas used in the context of an industrial process. In particular, themethodologies described above are provided in various contexts todetermine the accuracy of such processes relative to traditional DPCAanalysis, when trained on the same faulty data. As seen herein, themodeling and fault detection system provides for improved faultdetection, and therefore improved operation of the underlying process bybeing able to detect more accurately when errors in sensors used tomonitor such processes may occur.

In an example case study, four different scenarios are considered.First, DPCA is carried out on normal data. This is the ideal scenario,since DPCA modelling has been successfully carried out on uncorrupteddata. The second scenario corresponds to where DPCA is carried out oncorrupted data. The third scenario is the sequential method outlined inconnection with FIG. 2, where PCP is used to clean the data first, andthis data is then used to build the DPCA model. The fourth scenario isthe integrated method outlined above in connection with FIG. 3, wherePCP is carried out on the augmented matrix to be used in DPCA.

In the example shown, the case study relates to a steam generator fieldtest for data received from a plurality of sensors. As an initialmatter, a matrix similarity is considered across these four scenarios.As seen in Table 1, below, the processes described above in connectionwith FIGS. 2-3 result in a substantially more similar matrix to the DPCAmatrix based on uncorrupted data as compared to simply applying DPCA tofaulty data:

TABLE 1 Matrix Similarity Test Similarity Normal DPCA vs 0.4361 FaultyDPCA Normal DPCA vs 0.9981 Sequential Method Normal DPCA vs 0.9969Integrated Method

In a further analysis of the various methods, detection and false alarmrates were calculated using 4000 samples for training data, and theremaining 6000 as testing data. Fault types in this data set includedoutliers, missing values, frozen values and bias. The results arepresented in Table 2, below.

TABLE 2 4000 samples for training data, 6000 for testing, λ = 0.02Detection of False Fault Alarm DPCA Trained with Normal data 0.76880.0651 DPCA Trained with Faulty Data 0.0815 0.0028 PCP then DPCA(Sequential), Faulty 0.9104 0.6178 Data Robust DPCA (Integrated withPCP), 0.7746 0.2995 Faulty Data

As seen in that table, a possible goal, namely, to meet or surpass theresults of the normal DPCA results, can be achieved. As specificallyseen in Table 2 (and in tables below) the text without bold and/oritalics represents an acceptable value, while text in bold may beunacceptable, and text in bold and italics requires case-by-caseanalysis. The DPCA analysis shows approximately 77% successfuldetection, and a low 6.5% false alarm rate, where a successful detectionrate corresponds to a number of correctly detected faults divided by atotal number of detected faults, and a false alarm rate corresponds to anumber of false alarms divided by the number of normal samples. However,DPCA analysis based on faulty data causes that analysis to be unable todetect most of the faults (hence “Detection of Fault” for DPCA trainedwith faulty data has bolded text). However, when the methods describedherein are applied, such successful detection can be achieved. Inparticular, in the sequential method, a 91% detection is achieved, buthas a drawback of a prohibitively high false alarm rate (hence, thebolded text for PCP then PDCA (Sequential) using faulty data as to falsealarm rates). The integrated method of FIG. 3 results in a comparablefault detection rate to the normal DPCA, however, it also has a higherfalse alarm rate.

Accordingly, and as noted above, various components of the DPCA analysiscan be adjusted in an attempt to improve this result, including amongother features, the number of principal components used, and theconvergence rate. However, one possible modification might be made tothe λ factor, which assists by adjusting both detection and false alarmrates.

In Table 3, below, λ has been slightly changed, from 0.02 to 0.022. Asseen in Table 3, the integrated method has substantially lower detectionrates, but also has a far lower false alarm rate. The sequential methoddescribed in connection with FIG. 2 maintains a high detection rate andhigh false alarm rate. As such, even a slight change in λ causes asignificant effect on results.

TABLE 3 Same as previous test, λ = 0.022 instead of 0.02 Detection ofFalse Fault Alarm DPCA Trained with Normal data 0.7688 0.0651 DPCATrained with Faulty Data 0.0815 0.0028 PCP then DPCA (Sequential),Faulty Data 0.8821 0.4217 Robust DPCA (Integrated with PCP), Faulty0.5873 0.1021 Data

As seen in FIG. 4, a graphical depiction 400 of the relationship betweendetection rate and false alarm rate in this example are provided. It isdesirable to select a λ value that maintains a high detection rate,while achieving an acceptable false alarm rate. Both rates reduce, inthis case, as the λ factor is increased.

Continuing the analysis of the effectiveness of the systems describedherein, a relationship between a number of samples used in the trainingdata set and the effectiveness of the related methodology areinvestigated. As seen in Table 4, a test is performed that uses 3000data points in a training dataset, rather than 4000 training data pointsas above. In this example, while the detection rates remain high for thesequential and integrated processes of FIGS. 2-3, the false alarm ratesremain high, indicating inadequate training of the DPCA model.

TABLE 4 Same as test 1, but with 3000 samples training data Detection ofFalse Fault Alarm DPCA Trained with Normal data 0.7994 0.0976 DPCATrained with Faulty Data 0.0507 0.0025 PCP then DPCA (Sequential),Faulty Data 0.9961 0.9769 Robust DPCA (Integrated with PCP), 0.83610.6151 Faulty Data

In view of the above, it can be seen that training of a standard DPCAmodel with faulty data results, in nearly all cases, in very poordetection rates. Accordingly, the robust DPCA processes presentedherein, including both the “sequential” method of FIG. 2 and the“integrated” method of FIG. 3 both provide far improved detection rates.

Referring to FIG. 5, a graph 500 is shown illustrating error detectionusing the various methods described herein relative to standard DPCAanalysis. As seen in FIG. 5, the integrated method is able to detectsome faults that the sequential method is not able to. Furthermore,though the sequential method results in high detection rates in all thetests, it also consistently results in high false alarm rates ascompared to the integrated method. Furthermore, proper tuning andadequate training data are important to providing effective faultdetection with either of the methods described herein. Of course, theintegrated method requires an SVD calculation on a much largermatrix—the augmented (time-lagged) DPCA matrix. Accordingly, theintegrated method will generally be more complex and compute-intensivefor large data sets. But, since the building of the DPCA model is anoffline activity, this is not a significant issue.

Referring now to FIGS. 6-9, test results are depicted from analysis ofdata from a set of water tanks used in conjunction with an oil cleaningprocess. In conjunction with the examples provided herein, a 2000 sampletraining data set is used. The data set is assessed both “as-is” andwith outlier data added to that training data set to assess the effectof the methods described herein on compensating for such outliers.

FIG. 6 illustrates a graph 600 showing detection results for the dataset using normal DPCA, and both the sequential and integrated methods.Although it is unknown whether there are faults within the data, it isseen that the integrated method detection results are very similar tothe normal DPCA results and therefore the data is ‘largely normal’, anda low percentage of faults is acceptable. The sequential method in thiscase has a very high percent faulty result; this is likely reflective ofthe same problem of high false alarm rates described above.

FIG. 7 illustrates a graph 700 showing the training data set with faultdata removed using the two PCP based models and compares those resultsto application of DPCA on the raw data. The integrated method issuccessful at recreating the raw data, while the sequential method isless successful. Finally, the integrated method also results inrelatively low detection, which is reasonable since the data is supposedto be representative of normal operation.

FIG. 8 illustrates a graph 800 showing operation of the variousapproaches described herein to data once obvious outliers and/or missingdata points are introduced to the 2000 point training data set. In thisexample, the traditional DPCA method cannot be used, since it is nolonger effective in the presence of such outliers (due to the effect onthe error bound on the DPCA model). However, when considering both thesequential and integrated methods using PCP and DPCA, it can be seenthat both methods provide drastic improvement. Although the sequentialmethod still has the same problem of over-detection, both PCP methodssuccessfully detect all 6 introduced outliers as anomalies. As seen inthe graph 900 of FIG. 9, the training data set with faults removed showsthat the integrated PCP method is able to completely eliminate theoutlier, while the sequential method is able to reduce its magnitude.The integrated method also is specifically successful, which is seen inthat the previous low detection rate has only been affected slightly(from 10.07% to 10.32%), meaning that the new outliers have beendetected, but nothing else has changed from the previous test (in whichoutliers were lacking entirely).

Referring now to FIGS. 10-15, a further concrete example of anapplication of the sequential and integrated methods is described, inconnection with a Tennessee-Eastman process simulation. As seen in thesefigures, the integrated method is able to drastically reduce the faultsintroduced to the training data set, and is able to detect theintroduced faults in the testing data with a low false alarm rate (12%,compared to 2% using completely fault free data). Accordingly, therobust DPCA can be successfully performed. The sequential method resultsin a high number of false alarms in this example, however, it is alsoable to eliminate the faults introduced to the training data set.

FIG. 10 generally provides a schematic view of the model 1000 used inthe Tennessee-Eastman process control simulation, which is a knownprocess monitoring assessment model, provided herein for referencepurposes only. It is noted that the methods and analyses describedherein can be used with any of a variety of types of physical processes,and in particular industrial processes such as those in the oil and gasindustry, as well.

As seen in FIG. 11, a graph 1100 of training data is selected such thata low false alarm rate threshold is achieved (in this case, 2.2%). Usingthat data, a fault free analysis is provided in which control limits areset with a low false alarm rate. In this case, a separator pressure,stripper pressure, reactor pressure, and component C in product, andrecycle valve are monitored (as starred in FIG. 10). Furthermore,control limits are set to achieve an alarm rate of 2.2%

In FIG. 12, a graph 1200 shows that errors introduced in the trainingdata were detected, with the faults shown as the spikes. However, asseen in FIG. 13, graph 1300 is shown using a DPCA model trained onfaulty training data. In this case, rather than the clean training dataof FIG. 11, a DPCA analysis results on testing data in a detection rateof only 2.5%, and a false alarm rate of 69.89%. Accordingly, DPCA aloneis not acceptable for use with faulty training data.

By way of contrast, in FIG. 14, both the sequential and integratedrobust DPCA with PCP approaches are illustrated. In the graph 1400 ofFIG. 14, all introduced faults are detected, but a false alarm ratevaries widely across the approaches. In this example, the sequentialmethod results in a 90.0% false alarm rate, and the integrated methodresults in a 12.2% false alarm rate. It is noted that, as shown in thegraph 1500 of FIG. 15, all of the introduced false alarms are detectedand removed using the PCP analysis in either context.

Referring generally to the systems and methods of FIGS. 1-15, it isnoted that the methods and systems of the present disclosure provide anumber of real world and computational advantages over existing systems.In particular, the methods and systems described herein allow fordetection of faults with increased accuracy. The methods and systems inparticular do so without requiring pre-cleaning or analysis of trainingdata, which provides a significant advantage over existing technologiesdue to the time savings regarding process setup, and in particular, timesavings regarding DPCA model building.

Referring in particular to computing systems embodying the methods andsystems of the present disclosure, it is noted that various computingsystems can be used to perform the processes disclosed herein. Forexample, embodiments of the disclosure may be practiced in various typesof electrical circuits comprising discrete electronic elements, packagedor integrated electronic chips containing logic gates, a circuitutilizing a microprocessor, or on a single chip containing electronicelements or microprocessors. Embodiments of the disclosure may also bepracticed using other technologies capable of performing logicaloperations such as, for example, AND, OR, and NOT, including but notlimited to mechanical, optical, fluidic, and quantum technologies. Inaddition, aspects of the methods described herein can be practicedwithin a general purpose computer or in any other circuits or systems.

Embodiments of the present disclosure can be implemented as a computerprocess (method), a computing system, or as an article of manufacture,such as a computer program product or computer readable media. Thecomputer program product may be a computer storage media readable by acomputer system and encoding a computer program of instructions forexecuting a computer process. Accordingly, embodiments of the presentdisclosure may be embodied in hardware and/or in software (includingfirmware, resident software, micro-code, etc.). In other words,embodiments of the present disclosure may take the form of a computerprogram product on a computer-usable or computer-readable storage mediumhaving computer-usable or computer-readable program code embodied in themedium for use by or in connection with an instruction execution system.

Embodiments of the present disclosure, for example, are described abovewith reference to block diagrams and/or operational illustrations ofmethods, systems, and computer program products according to embodimentsof the disclosure. The functions/acts noted in the blocks may occur outof the order as shown in any flowchart. For example, two blocks shown insuccession may in fact be executed substantially concurrently or theblocks may sometimes be executed in the reverse order, depending uponthe functionality/acts involved. Alternatively, one or more additionalblocks may be added to any of the flowcharts and thus the order maychange due to the one or more additional blocks.

While certain embodiments of the disclosure have been described, otherembodiments may exist. Furthermore, although embodiments of the presentdisclosure have been described as being associated with data stored inmemory and other storage mediums, data can also be stored on or readfrom other types of computer-readable media. Further, the disclosedmethods' stages may be modified in any manner, including by reorderingstages and/or inserting or deleting stages, without departing from theoverall concept of the present disclosure.

The above specification, examples and data provide a completedescription of the manufacture and use of the composition of theinvention. Since many embodiments of the invention can be made withoutdeparting from the spirit and scope of the invention, the inventionresides in the claims hereinafter appended. All references providedherein are incorporated herein by reference in their entirety.

The invention claimed is:
 1. A computer-implemented method formonitoring an industrial process, the method comprising: forming, inmemory of a computing system, a first data matrix at a data processingframework from training data, the training data from operation of theindustrial process having at least two sensors, wherein the trainingdata comprises time-series data; performing a principal componentpursuit on the first data matrix to form at least an uncorrupted,unscaled matrix and a sparse matrix in the memory, wherein theuncorrupted, unscaled matrix corresponds to error-free training data andwherein the sparse matrix corresponds to errors in the training data;scaling the uncorrupted, unscaled matrix to form an uncorrupted scaledmatrix; performing a dynamic principal component analysis on theuncorrupted scaled matrix to form a dynamic principal component analysismodel; determining a squared prediction error from the dynamic principalcomponent analysis model and sample data from operation of theindustrial process having the at least two sensors; based on the squaredprediction error, detecting one or more faults in the sample data; andperforming at least one of (1) correcting the one or more faults in thesample data or (2) performing a repair operation on a sensor from amongthe at least two sensors.
 2. The computer-implemented method of claim 1,wherein the industrial process comprises a process occurring at ahydrocarbon facility.
 3. The computer-implemented method of claim 1,wherein the first data matrix comprises an augmented matrix includingtime-lagged variables from an original matrix including the trainingdata.
 4. The computer-implemented method of claim 3, wherein theaugmented matrix is only generated before the step of performing theprincipal component pursuit.
 5. The computer-implemented method of claim1, further comprising augmenting the uncorrupted matrix to form atwo-dimensional matrix having a predetermined number of rows and apredetermined number of columns, the predetermined number of rowscorresponding to a number of time-sequence samples included in thetraining data and the predetermined number of columns corresponding to anumber of time-lagged variables being considered.
 6. Thecomputer-implemented method of claim 1, wherein the principal componentpursuit includes a parameter defining a threshold for noise from thefirst data matrix.
 7. The computer-implemented method of claim 6,further comprising generating a noise matrix based on the threshold fornoise from the first data matrix.
 8. The computer-implemented method ofclaim 7, further comprising adding the noise matrix to the uncorrupted,unscaled matrix and using the noisy, uncorrupted, unscaled matrix forperforming the dynamic principal component analysis.
 9. Thecomputer-implemented method of claim 6, wherein the parameter is greaterthan zero.
 10. The computer-implemented method of claim 1, furthercomprising generating an alert indicating the existence of the one ormore faults.
 11. The computer-implemented method of claim 1, furthercomprising tuning a parameter associated with the sparse matrix tobalance a rate of fault detection against a rate of false alarming. 12.A fault detection system useable to monitor an industrial process, thefault detection system comprising: a computing system including aprocessor and a memory communicatively connected to the processor, thecomputing system configured to execute, based on instructions stored inthe memory, a method, the method comprising: forming, in the memory, afirst data matrix at a data processing framework from training data, thetraining data from operation of the industrial process having at leasttwo sensors, wherein the training data comprises time-series data;performing a principal component pursuit on the first data matrix toform at least an uncorrupted, unscaled matrix and a sparse matrix in thememory, wherein the uncorrupted, unscaled matrix corresponds toerror-free training data and the sparse matrix corresponds to errors inthe training data; scaling the uncorrupted, unscaled matrix to form anuncorrupted scaled matrix; performing a dynamic principal componentanalysis on the uncorrupted scaled matrix to form a dynamic principalcomponent analysis model; determining a squared prediction error fromthe dynamic principal component analysis model and sample data fromoperation of the industrial process having the at least two sensors;based on the squared prediction error, detecting one or more faults inthe sample data; and performing at least one of (1) correcting the oneor more faults in the sample data or (2) initiating a repair operationon a sensor from among the at least two sensors.
 13. The system of claim12, wherein the first data matrix comprises an augmented matrixincluding time-lagged variables from an original matrix including thetraining data.
 14. The system of claim 13, wherein the augmented matrixis only generated before the step of performing the principal componentpursuit.
 15. The system of claim 12, wherein the principal componentpursuit includes a parameter defining a threshold for noise from thefirst data matrix.
 16. The system of claim 15, further comprisinggenerating a noise matrix based on the threshold for noise from thefirst data matrix.
 17. The system of claim 16, further comprising addingthe noise matrix to the uncorrupted, unscaled matrix and using thenoisy, uncorrupted, unscaled matrix for performing the dynamic principalcomponent analysis.
 18. The system of claim 15, wherein the parameter isgreater than zero.
 19. The system of claim 12, further comprising adisplay configured to display an alert to the user based on detection ofthe one or more faults.
 20. The system of claim 12, wherein thecomputing system comprises one or more computing devices.
 21. The systemof claim 12, further comprising generating an alert indicating theexistence of the one or more faults to a user of the system.
 22. A faultdetection system useable to monitor a process within a hydrocarbonfacility, the fault detection system comprising: a computing systemincluding a processor and a memory communicatively connected to theprocessor, the computing system configured to execute, based oninstructions stored in the memory, a method, the method comprising:forming, in the memory, a first data matrix at a data processingframework from training data, the training data from at least twosensors associated with the process within the hydrocarbon facility, thetraining data comprising time-series data including any errorsrepresented by a sparse data matrix; performing a principal componentpursuit on the first data matrix to form at least an uncorrupted,unscaled matrix and a sparse matrix in the memory, wherein theuncorrupted, unsealed matrix corresponds to error-free training data,wherein the sparse matrix corresponds to errors in the training data,and wherein performing the principal component pursuit includes tuning aparameter associated with the sparse matrix to balance a rate of faultdetection against a rate of false alarming; scaling the uncorrupted,unsealed matrix to form an uncorrupted scaled matrix; performing adynamic principal component analysis on the uncorrupted matrix to form adynamic principal component analysis model; determining a squaredprediction error from the dynamic principal component analysis model andsample data from operation of the process within the hydrocarbonfacility having the at least two sensors; based on the squaredprediction error, detecting one or more faults in the sample data; andperforming at least one of (1) correcting the one or more faults in thesample data or (2) performing a repair operation on a sensor from amongthe at least two sensors.
 23. The system of claim 22, wherein the firstdata matrix comprises an augmented matrix including time-laggedvariables from an original matrix including the training data.
 24. Thesystem of claim 22, wherein the augmented matrix is only generatedbefore the step of performing the principal component pursuit.